package file;

import java.io.File;

/**
 * File的演示
 * 可以理解为我们硬盘上的一个文件或目录，但实际上它只表示一个路径而已，只不过这个路径在硬盘上是真实存在的
 * java.io.File:
 * 该类的每一个实例用于表示一个文件或目录，但实际上表示的是一个抽象路径
 * 使用File可以：
 * 1）访问其表示的文件或目录的属性信息（名字、大小、权限等）
 * 2）创建/删除文件或目录
 * 3）访问一个目录中的子项信息
 *
 * 注意：File是不能访问文件数据的
 */
public class FileDemo {
    public static void main(String[] args) {
        //绝对路径：从盘符开始，不利于跨平台
        //File file = new File("C:/Users/Tedu/Downloads/string");

        //相对路径：相对于某个位置开始，有利于跨平台
        //常用的相对路径有1）"./"表示当前目录  2）后期常用的类加载路径
        //"./"在Idea执行程序时表达的是当前类所在的项目目录，此处指jsd2302这个目录的项目
        File file = new File("./");

        String name = file.getName();//获取file表示的文件或目录的名字
        System.out.println("name:"+name);

        long len = file.length();//获取file表示的文件或目录的长度（大小）
        System.out.println("length:"+len);

        boolean ih = file.isHidden();//文件是否是隐藏的
        boolean cr = file.canRead();//文件是否可读
        boolean cw = file.canWrite();//文件是否可写
        System.out.println("是否隐藏："+ih);
        System.out.println("是否可读："+cr);
        System.out.println("是否可写："+cw);
    }
}
